1. Field of the Invention
The present invention generally relates to scheduling systems and, more particularly, to computer systems for developing, managing and periodically modifying complex schedules and projects.
2. Description of the Prior Art
Programmed data processors have long been used to store and selectively present portions of potentially massive quantities of data and to carry out lengthy and complex data processing tasks in which a series of operations must be carried out in a particular sequence. Among these types of tasks, the development of schedules for carrying out a particular course of action or plan is often especially complex. As a practical matter, numerous concerns may present conflicting requirements such as when a project and activities therein must be carried out concurrently with continued operations of a business.
For example, consider a manufacturer or operator of aircraft (or any other fleet of vehicles or other plurality of similar objects) which must oversee maintenance of aircraft which have been placed in service by the manufacturer""s customers. Modifications and upgrades will often be designed and implemented on a more-or-less continual basis to enhance safety and performance of the aircraft or to meet particular performance requirements and it is desirable that all previously built aircraft receive such modifications in a timely fashion while maintaining an adequate number of aircraft in service at all times which is sufficient to support the customer""s business. It is also often desirable in implementing modifications that as few modification states as possible exist in the fleet of aircraft or plurality of objects and frequently only a maximum of only two modification states are permitted at any time.
In this particular example, it should be understood that modifications and service of aircraft is particularly subject to complication by the complexity and size of commercial aircraft and process criticality of maintenance and modifications. Not only does service and modification often require disassembly of significant portions of the aircraft but special tools and facilities are often required which may be available at only a few locations nationwide. Further, modifications and upgrades often involve lead-time for design, fabrication and distribution of parts of as long as several years and which may be extended by the process of funding of such activities. Therefore, at any given time, many such upgrades or modifications may be planned or in process and modifications must generally be coordinated with regular maintenance schedules both as to timing and location. Additionally, some modifications may rely on others being carried out earlier or concurrently and may also involve training of flight crews as well as personnel to carry out the modifications or maintenance. Flight testing and other processes of validation and approval for the modification, which can be extremely expensive, may also be required.
Accordingly, it is seen that service and upgrading of aircraft, in particular, takes on the form of an ongoing complex plan which may extend over many years (e.g. the entire service life of the aircraft including the period of its original design, manufacture and certification). Further, each of the above potential complications, requirements and dependencies of activities within the plan (referred to as an attribute of an activity) of each service or modification and many others must be considered in the formulation and alterations of the plan from time to time as business contingencies and capabilities may permit or require.
It can therefore be readily understood that the complexity of the overall plan or schedule increases rapidly with each of the number of objects under the plan, the number of attributes of each action to be taken, the number of activities or actions to be carried out on the objects and the length of time over which the plan extends. If the plan is generated by manual methods, as is the current practice, such increase of complexity increases the time required to do so and greatly increases the likelihood of error. Any change in attributes or the addition or alteration of any modification may require most, if not all, of the schedule generation process to be repeated. As a practical matter, frequency of plan or schedule changes encountered in maintenance and modification of even a small fleet of aircraft and many other business endeavors is such that the plan or schedule is seldom current or accurate. Foreseeable increases in numbers of attributes which must be considered in a schedule plan are such that the frequency of changes may exceed the rate at which the plan or schedule can be updated using manual methods.
Therefore use of data processors to generate schedules has been attempted in recent years but has achieved little success for schedules of more than low complexity. Approaches to date have generally involved programming the computer to make all of the logical decisions in grouping and scheduling of activities. However, this type of approach requires the logical combinations applicable to the attributes of the activities to be embodied in the programming and results in program complexity approaching that of a neural network for relatively modest numbers of objects, activities and attributes of the activities. Such programming requires extensive definition of the individual activities and elaborate and complicated decision-making algorithms. These complexities of programming require substantial development time and expense for the program and large hardware and computational overhead while resulting in a program which has little flexibility, limited applicability, requires extensive and costly changes to accommodate any alteration of data or logic and does not easily accommodate user interaction to permit business decisions to be used or their effect to be evaluated in the course of schedule development. Additionally, such systems do not ordinarily support communication of the schedule in a timely fashion when changes in the schedule are made.
It is therefore an object of the present invention to provide an easily alterable, flexible system for supporting the formulation of long-range schedule planning which allows a high degree of user interactivity and presentation of supporting data.
It is another object of the invention to provide for presentation of sub-sets of data to a user together with an ordered list of other data in a serial fashion to facilitate user interaction and decision making in the development of a complex scheduling plan.
In order to accomplish these and other objects of the invention, a data processing system is provided including a relational database containing data representing a plurality of activities and attributes of the activities, a scheduler application and an interface between said relational database and said scheduler application including an arrangement for editing the attributes and grouping the activities in accordance with edited attributes.
In accordance with another aspect of the invention, a method of operating a data processing system is provided including the steps of developing a database including a plurality of entries, each entry including a plurality of associated attributes, selecting an entry based on at least one of the attributes, presenting at least the selected entry to a user in a first list together with remaining entries as a second list for editing of the first list.